/**
 * FileName: IErrorCode
 * Author: TangZaoBang
 * Date: 2023/04/29 13:46
 * Description:
 * <p>
 * History:
 * <author> TangZaoBang
 * <time> 2023/04/29 13:46
 * <version> 1.0.0
 * <desc> 版本描述
 */

package com.bosssoft.quickstart.demo.exception;

/**
 * @Class IErrorCode
 * @Description 所有的模块的异常类型的的父接口该类将会具体的模块的编码枚举实现，枚举类将注入
 *  *  特定的异常类 如 BusinessException(IModuleCode,IErrorCode,message,ex)
 * @Author TangZaoBang
 * @Date 2023/04/29 13:46
 * @Version
 */
public interface IErrorCode {
    /**
     * 获得code
     * @return 取得枚举中的模块编码
     */
    String getCode();
    /**
     *获得Msg
     * @return  取得枚举中的模块说明也就是 消息
     */
    String getMessage();

    /**
     *  访问数据库使用数据库返回错误码所以需要提供该接口赋值
     * @param code 外部应用生成的错误码 例如mysql数据库错误码
     */
    void setCode(String code);

    /**
     * 访问数据库使用数据库返回消息或者定义的所以需要提供该接口赋值
     * @param message
     */
    void setMessage(String message);
}
